Conversation
btop initialises NVML at startup whenever shown_gpus lists nvidia, whether or not a GPU box is on screen. On a hybrid laptop whose iGPU drives every output, opening Activity therefore resumed the discrete GPU and held it awake for as long as btop ran, on battery included. Route the Activity binding through omarchy-launch-activity, which drops nvidia from shown_gpus while every NVIDIA GPU is runtime suspended and puts it back once the card is awake. The check reads the cached sysfs power state, which unlike lspci or NVML does not itself wake the card. Fixes omacom#11184 Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01LKJ7WaM8LCBtL91KJe3wQT
Automated AI review
Outcome: Launcher re-adds
|
btop initialises NVML at startup whenever
shown_gpuslistsnvidia, whether or not a GPU box is on screen. On a hybrid laptop whose iGPU drives every output, opening Activity therefore resumed the discrete GPU and held it awake for as long as btop ran, on battery included.Route the Activity binding through
omarchy-launch-activity, which dropsnvidiafromshown_gpuswhile every NVIDIA GPU is runtime-suspended and puts it back once the card is awake. The check (omarchy-hw-nvidia-suspended) reads the cached sysfspower/runtime_status, which unlike lspci or NVML does not itself wake the card — the same criterion the report measured against.Fixes #11184
Testing
New
hw-nvidia-suspended-test.sh(5 cases) andlaunch-activity-test.sh(4 cases). Also exercised the launcher end-to-end with the real detector and the shippedbtop.conf: no NVIDIA → file untouched; simulated suspended NVIDIA → onlyshown_gpuschanges; awake again → file restored exactly. Fulltest/shellrun shows only the pre-existing environmental failures.🤖 Generated with Claude Code
https://claude.ai/code/session_01LKJ7WaM8LCBtL91KJe3wQT